//Copyright (c) 2012 The cwkshell Authors. All rights reserved. 
// Use of this source code is governed by a BSD-style license that can be 
// found in the LICENSE file. 
#ifndef CUC_CWKSHELL_BROWSER_UI_SHELL_SELECT_FILE_POLICY_H_ 
#define  CUC_CWKSHELL_BROWSER_UI_SHELL_SELECT_FILE_POLICY_H_ 
#include "base/basictypes.h"
#include "base/callback_forward.h"
#include "base/compiler_specific.h"
#include "ui/shell_dialogs/select_file_policy.h"

namespace content {
	class WebContents;
}
namespace cuc{ 
	namespace shell{ 
		class ShellSelectFilePolicy : public ui::SelectFilePolicy {
		public:
			explicit ShellSelectFilePolicy(content::WebContents* source_contents);
			virtual ~ShellSelectFilePolicy();

			// Overridden from ui::SelectFilePolicy:
			virtual bool CanOpenSelectFileDialog() OVERRIDE;
			virtual void SelectFileDenied() OVERRIDE;

			// Returns true if local state allows showing file pickers.
			static bool FileSelectDialogsAllowed();

		private:
			content::WebContents* source_contents_;

			DISALLOW_COPY_AND_ASSIGN(ShellSelectFilePolicy);
		};
	} //namespace shell 
} //namespace cuc 
#endif //CUC_CWKSHELL_BROWSER_UI_SHELL_SELECT_FILE_POLICY_H_ 
